home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / radmin_detect.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  103 lines

  1. #
  2. # This script was written by Michel Arboi <arboi@alussinan.org>
  3. #
  4. # GPL
  5. #
  6.  
  7.  
  8.  
  9. if(description)
  10. {
  11.   script_id(11123);
  12.   script_version ("$Revision: 1.6 $");
  13.  
  14.   script_name(english:"radmin detection");
  15.  
  16.   desc["english"] = "
  17. radmin is running on this port. 
  18. Make sure that you use a strong password, otherwise a cracker
  19. may brute-force it and control your machine.
  20.  
  21. If you did not install this on the computer, you may have
  22. been hacked into.
  23. See: http://www.secnap.com/security/radmin001.html
  24.  
  25. Solution: disable it if you do not use it
  26.  
  27. Risk factor : Medium";
  28.  
  29.   script_description(english:desc["english"]);
  30.  
  31.   summary["english"] = "Detect radmin";
  32.   script_summary(english:summary["english"]);
  33.  
  34.   script_category(ACT_GATHER_INFO);
  35.  
  36.   script_copyright(english:"This script is Copyright (C) 2002 Michel Arboi");
  37.   family["english"] = "Backdoors";
  38.   script_family(english:family["english"]);
  39.   script_dependencie("find_service2.nasl");
  40.   script_require_ports("Services/unknown", 4899);
  41.  
  42.   exit(0);
  43. }
  44.  
  45. include ("misc_func.inc");
  46.  
  47.  
  48. if(safe_checks())
  49. {
  50.  port = 4899;
  51. }
  52. else
  53. {
  54.  port = get_kb_item("Services/unknown");
  55.  if (! port) port=4899;
  56. }
  57. if (! get_port_state(port)) exit(0);
  58.  
  59. if (known_service(port: port)) exit(0);
  60.  
  61. soc = open_sock_tcp(port);
  62. if (! soc) exit(0);
  63.  
  64. req = raw_string(0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x08);
  65. send(socket: soc, data: req);
  66. #r = recv(socket: soc, length: 16);
  67. r = recv(socket: soc, length: 6);
  68. close(soc);
  69.  
  70. # I got :
  71. # 0000000 001  \0  \0  \0   %  \0  \0 001 020  \b 001  \0  \0  \b  \0  \0
  72. #         01 00 00 00 25 00 00 01 10 08 01 00 00 08 00 00
  73. # 0000020  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
  74. #         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  75. # 0000040  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
  76. #         00 00 00 00 00 00 00 00 00 00 00 00 00 00
  77. # 0000056
  78. #
  79. # Noam Rathaus <noamr@beyondsecurity.com> saw differents replies,
  80. # depending on the security settings:
  81. #  password security => 6th byte (r[5]) == 0
  82. #  NTLM security     => 6th byte (r[5]) == 1
  83. # I tried, and always got the same answer, whatever the security setting is.
  84. # Odd...
  85.  
  86. #xp = raw_string(0x01, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x01, 
  87. #                0x10, 0x08, 0x01, 0x00, 0x00, 0x08, 0x00, 0x00);
  88.  
  89. xp1 = "010000002500";
  90. xp2 = "010000002501";
  91.  
  92.  
  93.  
  94. if (( xp1 >< hexstr(r) ) || ( xp2 >< hexstr(r) ))
  95. {
  96.         security_warning(port);
  97.         register_service(port: port, proto: "radmin");
  98.     exit(0);
  99. }
  100.  
  101.  
  102.